home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / DB_CLIPP / 1159.ZIP / ERRFILE.PRG < prev    next >
Text File  |  1986-07-31  |  2KB  |  89 lines

  1.   DO WHILE .NOT. EOF()
  2.     IF CALIB_INT=99 .OR. CALIB_INT=0
  3.      IF BY_DATE>3
  4.       REPLACE BY_DATE WITH 0
  5.      ENDIF
  6.      SKIP
  7.      @ 23,43 SAY RECNO()
  8.      LOOP
  9.     ENDIF
  10.   IF YEAR(CALIB_DATE)+100-YEAR(DAT)<10
  11.    MOCALDT=MONTH(CALIB_DATE)
  12.    DYCALDT=DAY(CALIB_DATE)
  13.    YRCALDT=INT(YEAR(CALIB_DATE)+100)
  14.    IF MOCALDT<10
  15.      M=1
  16.     ELSE
  17.      M=2
  18.    ENDIF
  19.    IF DYCALDT<10
  20.      D=1
  21.     ELSE
  22.      D=2
  23.    ENDIF
  24.    REPLACE CALIB_DATE WITH CTOD(STR(MOCALDT,M,0)+'/'+STR(DYCALDT,D,0)+'/'+;
  25. STR(YRCALDT,4,0))
  26.   ENDIF
  27.   IF YEAR(CAL_DUE_DT)+100-YEAR(DAT)<10
  28.    MOCALDT=MONTH(CAL_DUE_DT)
  29.    DYCALDT=DAY(CAL_DUE_DT)
  30.    YRCALDT=INT(YEAR(CAL_DUE_DT)+100)
  31.    IF MOCALDT<10
  32.      M=1
  33.     ELSE
  34.      M=2
  35.    ENDIF
  36.    IF DYCALDT<10
  37.      D=1
  38.     ELSE
  39.      D=2
  40.    ENDIF
  41.    REPLACE CAL_DUE_DT WITH CTOD(STR(MOCALDT,M,0)+'/'+STR(DYCALDT,D,0)+'/'+;
  42. STR(YRCALDT,4,0))
  43.   ENDIF
  44.  IF BY_DATE#200.AND.CALOVER=0
  45.     TCOMP=YR*365.24+MO*30.44+DY
  46.     TDCOMP=YR*365.24+(MO-CALIB_INT)*30.44+DY
  47.     CDCOMP=YEAR(CALIB_DATE)*365.24+MONTH(CALIB_DATE)*30.44+DAY(CALIB_DATE)
  48.     CALDUEP=CDCOMP+CALIB_INT*30.44-5
  49.     CALDUDT=YEAR(CAL_DUE_DT)*365.24+MONTH(CAL_DUE_DT)*30.44+DAY(CAL_DUE_DT)
  50.     IF TDCOMP>CDCOMP.OR.CDCOMP>TCOMP
  51.      DO REPCALDT
  52.      @ 23,24 SAY 'Now checking record'
  53.      @ 23,43 SAY RECNO()
  54.      LOOP
  55.     ENDIF
  56.     YRDUE=YEAR(CALIB_DATE)
  57.     MODUE=MONTH(CALIB_DATE)+CALIB_INT
  58.     DYDUE=DAY(CALIB_DATE)
  59.     IF MODUE>12
  60.      YRDUE=YRDUE+INT(MODUE/12)
  61.      MODUE=INT(MODUE-INT(MODUE/12)*12)
  62.     ENDIF
  63.     M=1
  64.     IF MODUE>9
  65.      M=2
  66.     ENDIF
  67.     D=2
  68.     IF DYDUE<10
  69.      D=1
  70.     ENDIF
  71.     DATDU=STR(MODUE,M,0)+'/'+STR(DYDUE,D,0)+'/'+STR(YRDUE,4,0)
  72.     CALCDUDT=CTOD(DATDU)
  73.     CALDUETY=YEAR(CALCDUDT)*365.24+MONTH(CALCDUDT)*30.44+DAY(CALCDUDT)
  74.     IF CALDUDT>CALDUETY.OR.CALDUDT<CALDUEP
  75.      DO REPCALDU
  76.      @ 23,24 SAY 'Now checking record'
  77.      @ 23,43 SAY RECNO()
  78.     LOOP
  79.     ENDIF
  80.    IF BY_DATE#200
  81.     REPLACE BY_DATE WITH CALDUDT-1
  82.    ENDIF
  83.   ENDIF
  84.     SKIP
  85.     CALOVER=0
  86.     @ 23,43 SAY RECNO()
  87.    ENDDO
  88. RETURN
  89.